package com.nanjia.boot.manufacturer.model.form;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;

import java.io.Serial;
import java.io.Serializable;

/**
 * 医疗器械生产商信息表单对象
 *
 * @author 周洋
 * @since 2025-08-19 13:42
 */
@Getter
@Setter
@Schema(description = "医疗器械生产商信息表单对象")
public class ManufacturerForm implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    private Long id;

    @Schema(description = "制造商名称")
    @NotBlank(message = "制造商名称不能为空")
    @Size(max=100, message="制造商名称长度不能超过100个字符")
    private String name;

    @Schema(description = "生产许可证号")
    @NotBlank(message = "生产许可证号不能为空")
    @Size(max=50, message="生产许可证号长度不能超过50个字符")
    private String licenseNumber;

    @Schema(description = "注册地址")
    @NotBlank(message = "注册地址不能为空")
    @Size(max=200, message="注册地址长度不能超过200个字符")
    private String address;

    @Schema(description = "联系电话")
    @NotBlank(message = "联系电话不能为空")
    @Size(max=20, message="联系电话长度不能超过20个字符")
    private String contactPhone;

    @Schema(description = "GMP证书编号")
    @NotBlank(message = "GMP证书编号不能为空")
    @Size(max=50, message="GMP证书编号长度不能超过50个字符")
    private String gmpCertificate;


}
